package com.ruoyi.doorBindQuery.service;

import com.ruoyi.doorBindQuery.domain.HouseDoorBindQuery;

import java.util.List;

/**
 * 户绑定Service接口
 *
 * @author lijie
 * @date 2025-04-17
 */
public interface IHouseDoorBindQueryService {
    /**
     * 查询户绑定
     *
     * @param bindId 户绑定主键
     * @return 户绑定
     */
    HouseDoorBindQuery selectHouseDoorBindQueryByBindId(Long bindId);
    HouseDoorBindQuery getBindInfo(String hotId);

    /**
     * 查询户绑定列表
     *
     * @param houseDoorBindQuery 户绑定
     * @return 户绑定集合
     */
    List<HouseDoorBindQuery> selectHouseDoorBindQueryList(HouseDoorBindQuery houseDoorBindQuery);
    List<HouseDoorBindQuery> getAreaBindInfo(HouseDoorBindQuery houseDoorBindQuery);
    List<HouseDoorBindQuery> getGroupBindInfo(HouseDoorBindQuery houseDoorBindQuery);
    List<HouseDoorBindQuery> getUnitBindInfo(HouseDoorBindQuery houseDoorBindQuery);
    List<HouseDoorBindQuery> getDoorBindInfo(HouseDoorBindQuery houseDoorBindQuery);

    /**
     * 新增户绑定
     *
     * @param houseDoorBindQuery 户绑定
     * @return 结果
     */
    int insertHouseDoorBindQuery(HouseDoorBindQuery houseDoorBindQuery);

    void importDoorBindInfo(List<HouseDoorBindQuery> userList) throws Exception;

    /**
     * 修改户绑定
     *
     * @param houseDoorBindQuery 户绑定
     * @return 结果
     */
    int updateHouseDoorBindQuery(HouseDoorBindQuery houseDoorBindQuery);

    /**
     * 批量删除户绑定
     *
     * @param bindIds 需要删除的户绑定主键集合
     * @return 结果
     */
    int deleteHouseDoorBindQueryByBindIds(Long[] bindIds);

    /**
     * 删除户绑定信息
     *
     * @param bindId 户绑定主键
     * @return 结果
     */
    int deleteHouseDoorBindQueryByBindId(Long bindId);
}
